import qs from 'qs';
import request from '@/utils/request'

/**
 * @param {Object} data
 */
export async function getScene(data) {
  return  request({
    url: '/i/scene/get',
    method: 'post',
    data:qs.stringify(data)
  })
}

export function getConfig() {
  return request({
    url: '/i/scene/menu/gets',
    method: 'post',
    data:qs.stringify({
      sceneId:'7752dcd41bb14f618e3d74cbcfa02ebb'
    })
  })
}

export function getLayers(data) {
  return request({
    url: '/i/scene/menu/getLayers',
    method: 'post',
    data
  })
}

export function getEntities(layerId) {
  return request({
    url: '/i/scene/layer/getEntities',
    method: 'post',
    data:qs.stringify({
      layerId:layerId
    })
  })
}

export function getEntity(id) {
  return request({
    url: '/scene/video/model/getById',
    method: 'post',
    data:qs.stringify({
      id:id
    })
  })
}

export function getGroup(data) {
  return request({
    url: '/i/scene/layer/getEntity',
    method: 'post',
    data
  })
}

export function getBaseLayerGroup(configs) {
	if(configs){
		for(var config of configs){
			if('BASE_LAYER_GROUP'==config.type){
				return config;
			}
		}
	}
  return null;
}

export function getListData(param) {
  return request({
    url: '/scene/model/listData',
    method: 'post',
    data:qs.stringify(param)
  })
}

export function getSelectTree() {
  return request({
    url: '/biz/model/classify/selectTree',
    method: 'get',
    data:''
  })
}

export function getModelById(param) {
  return request({
    url: '/scene/model/getModelById',
    method: 'post',
    data:qs.stringify(param)
  })
}

export function saveSceneModel(param) {
  return request({
    url: '/scene/model/save',
    method: 'post',
    data:qs.stringify(param)
  })
}

export function getProviders(param) {
  return request({
    url: '/scene/provider/getList',
    method: 'post',
    data:qs.stringify(param)
  })
}

export function getModels(param) {
  return request({
    url: '/scene/model/getList',
    method: 'post',
    data:qs.stringify(param)
  })
}
